package cn.iocoder.yudao.module.member.api.company;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.member.api.company.dto.CompanyPageReqDTO;
import cn.iocoder.yudao.module.member.api.company.dto.CompanyRespDTO;
import cn.iocoder.yudao.module.member.api.company.dto.CompanyUpdateReqDTO;
import cn.iocoder.yudao.module.member.api.company.dto.CompanyUserRespDTO;

import java.util.List;

/**
 * 企业 API 接口
 *
 * @author 芋道源码
 */
public interface CompanyApi {

    /**
     * 获得会员用户信息
     *
     * @param id 用户编号
     * @return 用户信息
     */
    CompanyRespDTO getCompanyByTenantId(Long id);

    PageResult<CompanyRespDTO> getCompanyPage(CompanyPageReqDTO pageVO);

    List<CompanyRespDTO> getHotCompanyPage(CompanyPageReqDTO pageVO);

    List<CompanyRespDTO> getHotCompanyPage1(CompanyPageReqDTO pageVO);

    List<CompanyRespDTO> getCompanyByIds(List<Long> ids);

    List<CompanyRespDTO> getCompanyAllByIds(List<Long> ids);

    CompanyRespDTO getCompanyById(Long id);

    Boolean updateCompany(CompanyUpdateReqDTO companyUpdateReqDTO);


    Boolean isAuthentication(String phone);


    Boolean isAuthenticationId(Long id);

    List<CompanyUserRespDTO>  getCompanyUserByCompanyId(Long companyId);
}
